import * as echarts from '../../ec-canvas/echarts';
import timer from "../../util/time"
import moment from "../../util/moment.min"
const $http = require('../../request/index');

const app = getApp();
// 存储用户的日期信息
var tmp_arr_date = [];
// 存储用户的数据信息
var tmp_arr_score = []
function initChart(canvas, width, height, dpr) {
  const chart = echarts.init(canvas, null, {
    width: width,
    height: height,
    devicePixelRatio: dpr // new
  });
  canvas.setChart(chart);

  var option = {
    title: {
      left: 'center'
    },
    legend: {
      data: ['学习积分'],
      top: 25,
      left: 'center',
      backgroundColor: '#12afdf',
      z: 100
    },
    grid: {
      containLabel: true
    },
    tooltip: {
      show: true,
      trigger: 'axis'
    },
    xAxis: {
      type: 'category',
      boundaryGap: false,
      // data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日'],
      // show: false
      data: tmp_arr_date
    },
    yAxis: {
      x: 'center',
      type: 'value',
      splitLine: {
        lineStyle: {
          type: 'dashed'
        }
      }
      // show: false
    },
    series: [{
      name: '学习积分',
      type: 'line',
      smooth: true,
      data: tmp_arr_score
    }]
  };

  chart.setOption(option);
  return chart;
}

Page({
  onShareAppMessage: function (res) {
    return {
      title: 'ECharts 可以在微信小程序中使用啦！',
      path: '/pages/index/index',
      success: function () { },
      fail: function () { }
    }
  },
  data: {
    ec: {
      onInit: initChart
    },
    // 观看视频的时间

  },

  onLoad: function (options) {
    this.getLearnDetail();
  },
  onShow: function () {
    this.getLearnDetail();
  },
  getLearnDetail() {
    $http.request("GET", `/front/user/score/week`, "").then(res => {
      let { data } = res.data
      let app = getApp();
      app.userInfo.learn_message = data;
      // 过去7天 有这个记录的话 就不添加0(else 行为) 否则加入else
      for (let i = 0; i < app.userInfo.learn_message.length; i++) {
        var learn_date = app.userInfo.learn_message[i].date / 1000;
        var month_learn_date = timer.formatTime(learn_date, 'M/D')
        // 当前的日期
        app.userInfo.learn_message[i].date = month_learn_date
        for (let j = 7 - tmp_arr_date.length; j >= 1; j--) {
          //  7.18 号之前 如果是7.13 - 7.18 之间的日期
          if (month_learn_date === (moment(new Date()).add(j * -1, 'days').format('MM/DD')) && !tmp_arr_date.includes(month_learn_date)) {
            // 从7.13 -18 如果到了7.18 就退出循环 在下面加入7.18
            console.log("目标", month_learn_date);
            break;
          } else {
            // console.log(moment(new Date()).add(j * -1, 'days').format('MM/DD'));
            // 加入7.18 加入有记录的 时间点
            tmp_arr_date.push(moment(new Date()).add(j * -1, 'days').format('MM/DD'))
            tmp_arr_score.push(0)
            console.log("日期信息", tmp_arr_date);
          }
        }
        // 今天是否有加入 数据 如果加入了 数组长度就会是8 否则是7 需要把今天的数据加入
        if (!tmp_arr_date.includes(month_learn_date)) {
          console.log("目标时长", month_learn_date);
          // 如果 里面没有 就添加上去 防止二次打开 重新添加相同的数组元素
          tmp_arr_date.push(month_learn_date)
          tmp_arr_score.push(app.userInfo.learn_message[i].score)
        }

      }
      // 如果 i是7.22 过去的一天加完了之后 就不会再执行了 如果
      for (let j = 7 - tmp_arr_date.length; j >= 1; j--) {
        if (month_learn_date === (moment(new Date()).add(j * -1, 'days').format('MM/DD')) && !tmp_arr_date.includes(month_learn_date)) {
          console.log("目标", month_learn_date);
          break;
        } else {
          tmp_arr_date.push(moment(new Date()).add(j * -1, 'days').format('MM/DD'))
          tmp_arr_score.push(0)
          console.log("日期信息", tmp_arr_date);
        }
      }

      if (tmp_arr_date.length < 8) {
        tmp_arr_date.push(moment().format('MM/DD')) //加上最后一天
        tmp_arr_score.push(0)
      }
    })
  }
});
